#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    // Qt中的connect机制设计出来的优点：
    // 1. 解耦合，把触发用户操作的控件和处理对应用户的操作逻辑解耦合
    // 2. 多对多：一个信号可以 connect 到多个槽函数上
    //           一个槽函数，可以被多个信号connect
    connect(this, &Widget::mySignals, this, &Widget::handleMySignals);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::handleMySignals(const QString& Text)
{
    this->setWindowTitle(Text);
}

void Widget::on_pushButton_clicked()
{
    // 使用emit关键字发送信号
    emit mySignals("标题一", "");
}

void Widget::on_pushButton_2_clicked()
{
    emit mySignals("标题二", "");
}
